 #ifndef GLWIDGET_H
 #define GLWIDGET_H

 #include <QGLWidget>
#include <vector>
typedef struct Nodo{
    int x;
    int y;
    int custo;
    std::vector <int> rotaX;
    std::vector <int> rotaY;
}Nodo;

 class GLWidget : public QGLWidget
 {
     Q_OBJECT

 public:
     GLWidget(QWidget *parent = 0);
     ~GLWidget();
     void cliqueBotaoAgente();
     void cliqueBotaoObstaculo();
     void cliqueBotaoNPC();
     void cliqueBotaoObjetivo();
     void cliqueBotaoWaypoint();
     void play();
     void pause();
     void setAlgoritmo(int Algoritmo);
     void setValorTerreno(int ValorTerreno);
     void limparCenario();
     void calcula_forca(int i);
     void GLWidget::cliqueBotaoTerreno();
     void aEstrela();
     int heuristica(int x,int y,int xDestino,int yDestino);


 protected:
     void initializeGL();
     void paintGL();
     void resizeGL(int width, int height);
     void mousePressEvent(QMouseEvent *event);
     void keyPressEvent(QKeyEvent *event);
     void timerEvent(QTimerEvent *event);
     double convertGridMundo(int x);
     int convertMundoGrid(double x);

 private:
    float cor;
    int  ALGORITMO_NPC;
};
 #endif
